#!/usr/bin/python
#-*-coding:utf-8-*-
'''
1.使用文件和目录操作(os 模块调用)
2.定义一个统计指定目录大小的函数（目录包含子目录）
3.递归遍历，列表返回
'''

#导入os模块
import os
#定义（目录大小）函数
def dirsize(file): 
    #定义变量，初始值=0
    sum = 0 
     #判断是否是文件
    if os.path.isfile(file): 
        #是文件，变量值为文件大小  
        sum += os.path.getsize(file)

     #判断是否是目录
    if os.path.isdir(file):    
        #定义变量（获取目录）
        dir = os.listdir(file)  
        
         #遍历目录
        for i in dir:     
            #文件及目录合并成一个路径     
            dir1 = os.path.join(file, i) 
            #递归调用统计（依次查询目录、文件）
            if os.path.isdir(dir1):
                sum += dirsize(dir1)    
            if os.path.isfile(dir1):
                sum += os.path.getsize(dir1)
    return sum

#打印出指定路径文件的大小
result = print(dirsize('D:\\CSDN-DT tech\\WEEK ONE-第一章Python基础\\课件\\模块一 第一章'))
